Method and control device for controlling a technical system

ABSTRACT

Provided is a state data of the technical system are captured and fed into a controller, which is configurable by control parameters, in order to control the technical system on the basis of the state data. Furthermore, complexity data quantifying a present computation complexity for the controller are captured and transmitted to a control planner. The control planner takes the complexity data as a basis for ascertaining an updated control parameter that renders the control currently more performant, according to a predefined performance measure, than as a result of the previous control parameter. The controller is then reconfigured by the updated control parameter.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application claims priority to European Application No. 20171827.7,having a filing date of Apr. 28, 2020, the entire contents of which arehereby incorporated by reference.

FIELD OF TECHNOLOGY

The following relates to a computer-implemented method for controlling atechnical system.

BACKGROUND

Control of complex technical systems, such as for example robots, windturbines, gas turbines, motors, internal combustion engines, productioninstallations or power transmission networks, is usually based on amultiplicity of control loops for controlling actions of the technicalsystem or its components.

The control systems are usually accordingly designed to optimize aperformance of the technical system, for example its capacity, itsaccuracy, its speed, its resource consumption, its pollutant emissionsor a combination of these, according to predefined criteria.

In many cases, however, these criteria can change during the performanceof actions or on the basis of operating states. This is the case forexample with a robot arm that is supposed to grip a small object. Whilethe robot arm is at a greater distance from the object, its movementtrajectory does not need to be controlled especially accurately.Instead, the speed of movement can more likely be increased. Thispreference changes as soon as the robot arm gets close to the object andis supposed to grip it.

At present, controllers are frequently configured such that theresulting control method satisfies the respective criteria under thegreatest possible number of, or all, operating conditions. Theconfiguring control parameters or meta parameters are often ascertainedmanually by experts in this case. The resulting control parameters arefrequently unnecessarily conservative for many operating conditions,however.

Furthermore, it is known that various sets of control parameters areused in order to take into account changing control criteria. Theascertainment of such sets of control parameters frequently requires ahigh level of complexity, however. Furthermore, changing of the controlparameters is often tied to rigid guidelines and therefore only slightlyflexible.

SUMMARY

An aspect relates to a method and a control device for controlling atechnical system that are more adaptable to different operatingconditions.

To control a technical system, state data of the technical system arecaptured and fed into a controller, the control method of which isconfigurable by a control parameter. The control parameter in thisinstance can in particular also be a multidimensional parameter vectorin a parameter space. The technical system is controlled by thecontroller on the basis of the state data in a first control loop usingthe control method. Furthermore, complexity data quantifying a presentcomputation complexity for the controller are captured and transmittedto a control planner.

The control planner takes the complexity data as a basis forascertaining an updated control parameter that renders the controlmethod currently more performant, according to a predefined performancemeasure, than as a result of the previous control parameter. Such aperformance measure can relate in particular to a performance of thecontroller and/or of the technical system, for example a controlaccuracy, a control speed, a performance accuracy, a performance speedand/or a weighted combination of these. The controller is thenreconfigured by the updated control parameter.

To perform the method according to embodiments of the invention there isprovision for a control device, a computer program product(non-transitory computer readable storage medium having instructions,which when executed by a processor, perform actions) and acomputer-readable, preferably non-volatile, storage medium.

The method according to embodiments of the invention and the controldevice according to embodiments of the invention can be embodied orimplemented for example by one or more computers, processors,application-specific integrated circuits (ASICs), digital signalprocessors (DSPs) and/or so-called “field programmable gate arrays”(FPGAs).

An advantage of embodiments of the invention can be seen in particularin that the control system can react in an optimized or at leastadvantageous manner in many cases by automatically reconfiguring thecontroller for changes of operating conditions. In particular, a controlsystem according to embodiments of the invention can take into account achanging computation complexity for the controller in an advantageousmanner. As such, a more accurate control system frequently calls for ahigher computation complexity for the controller. In such cases, forexample optimized coordination of a control accuracy with a performancespeed for an action while computation load is currently high can resultin the control accuracy being temporarily subject to increasedoptimization costs. It can be seen that embodiments of the invention canbe applied in a particularly advantageous manner to controllers thatrequire relatively high computation complexity, such as for examplemodel predictive controllers or MPC controllers.

Advantageous embodiments and developments of the invention are specifiedin the dependent claims.

According to one advantageous embodiment of the invention, thecomplexity data captured can be a processor load, a temperature, aresource use, a program runtime and/or a time requirement of thecontroller. The above complexity data quantify a present computationcomplexity for the controller and can frequently be measured or capturedotherwise in a simple manner. Furthermore, other variables dependent onor caused by the computation complexity for the controller can also becaptured as complexity data. In an embodiment, complexity data thatrelate to a hardware of the controller can be captured.

According to another advantageous embodiment of the invention, thecapture of the complexity data, the ascertainment of the updated controlparameter and the reconfiguration of the controller can be performed ina second control loop. In this way, the control method can bedynamically adapted for a present computation load on the controller inan automatic manner.

Furthermore, state data of the technical system can also be transmittedto the control planner, and the updated control parameter can beascertained on the basis of these state data. By additionally takinginto account present state data it is possible for control parameters tobe better adapted for present operating states of the technical systemin many cases.

According to another advantageous embodiment of the invention, thecontrol planner can ascertain a parameter range comprising first controlparameters in such a way that the control method configured in each caseby the first control parameters has better performance, according to theperformance measure, than the control method configured in each case byother control parameters. The parameter range can be regarded inparticular as a range or generally as a subset of a parameter space forthe control parameter. First control parameters can be assigned to theparameter range on the basis of a comparison of the performance measuresthat result in each case, for example.

Following ascertainment of the parameter range, a search for the updatedcontrol parameter can generally be restricted to the ascertainedparameter range. Consequently, the parameter range can advantageously beascertained by the control parameter beforehand in order to precludeless-than-optimum control parameters in regard to the search for theupdated control parameter in advance already.

In an embodiment, various performance variables relating to a resultingperformance can be ascertained for a respective control parameter. Theperformance variables can be ascertained in particular specifically forvarious states of the technical system and/or for different computationloads of the controller. The parameter range can then be assigned thosecontrol parameters for which a performance variable essentially cannotbe improved without impairing another performance variable in theprocess. Control parameters that do not satisfy the above condition canaccordingly be precluded from the parameter range.

The parameter range ascertained can preferably be a Pareto set, inparticular in regard to the performance variables and/or the performancemeasure. Such a Pareto set is frequently also referred to as a Paretofront. The elements of a Pareto set satisfy the above condition insofaras a respective target property cannot be improved without impairinganother target property in the process. A large number of optimizationmethods are available for ascertaining a Pareto set.

Following ascertainment of the parameter range, the updated controlparameter can be selected from the parameter range on the basis of thestate data and/or the complexity data. If the parameter range can beseverely limited in comparison with the full parameter space in manycases, a complexity for ascertaining the updated control parameternormally decreases considerably. In many cases, the ascertainment of theupdated control parameter and the reconfiguration of the controller cantherefore take place during the operation of the controller.

According to another advantageous embodiment of the invention, thecontroller can temporally extrapolate state data and control thetechnical system on the basis of the temporally extrapolated state data.For the purpose of temporal extrapolation the controller can use aprocess model that models a temporal behavior of the technical system orone of its components over a predefined time horizon. For suchforecast-based control systems it is possible to use in particular modelpredictive controllers or MPC controllers.

BRIEF DESCRIPTION

Some of the embodiments will be described in detail, with references tothe following Figures, wherein like designations denote like members,wherein:

FIG. 1 shows a control device according to embodiments of the inventionwhen controlling a technical system; and

FIG. 2 shows a more detailed depiction of the control device accordingto embodiments of the invention.

DETAILED DESCRIPTION

FIG. 1 schematically illustrates a control device CTLD according toembodiments of the invention when controlling a technical system TS. Thetechnical system TS controlled can be for example a robot, a windturbine, a gas turbine, a motor, an internal combustion engine, aproduction installation, a power transmission network or anothermachine, another device or another installation. The technical system TScan in particular also be a component or another part of a technicalsystem or a simulated technical system or a simulated component of atechnical system.

For the present exemplary embodiment, it will be assumed that thetechnical system TS is a robot and that the control device CTLD controlsa movement of a robot arm, by way of illustration.

The control device CTLD has a processor for performing the methodaccording to embodiments of the invention and a memory for storing datato be processed. The control device CTLD is depicted externally to thetechnical system TS in FIG. 1. Alternatively, all or part of the controldevice CTLD can also be integrated in the technical system TS.

The technical system TS has a first sensor system S1 having one or moreprocess sensors for capturing or measuring state data SD of thetechnical system TS.

The state data SD quantify an operating state of the technical systemTS, a process taking place there or other variables relevant to theoperation of the technical system TS. The state data SD can comprise forexample position data, motion data, process data or physical data, suchas temperature, pressure, force exerted, force applied, torque, current,voltage and/or power of the technical system TS or the componentsthereof. In particular, the state data SD captured can be data abouttarget variables of the technical system TS that should be optimizedduring operation, such as for example a resource consumption, vibrationsor a precision of actions. Furthermore, the state data SD can alsocomprise optical data captured by a camera or another optical sensor ofthe first sensor system S1. Furthermore, the state data SD captured canalso be other influencing factors relevant to the operation of thetechnical system TS, such as in particular data about surroundings ofthe technical system TS.

The first sensor system S1 continually captures present state data SD,in particular when performing controlled actions of the technicalsystem, such as for example during the movement of the robot arm. Thecurrently captured state data SD, which can relate to a present positionof the robot arm, for example, are fed as controlled variables into acontroller CTL of the control device CTLD, which generates controlsignals CS for the technical system TS on the basis thereof. Thegenerated control signals CS are output to the technical system TS inorder to control the latter. The control signals CS can control a motorof the robot arm, for example.

The capture of the present state data SD and their supply to thecontroller CTL, the generation of the control signals CS and the controlof the technical system TS by the control signals CS form a closed firstcontrol loop RL1. The latter can be implemented as a control loop of amodel predictive control system, for example. Such a model predictivecontrol system uses a process model to model and temporally extrapolatea behavior of the technical system over a predefined time horizon. Thetechnical system can then be controlled predictively on the basis of theextrapolated behavior.

The controller CTL performs a control method that is configurable by atleast one control parameter MP. Such a control parameter is frequentlyalso referred to as a meta parameter and is preferably represented as amultidimensional parameter vector in a parameter space. The controlparameter MP can set or configure a sampling rate of a model predictivecontroller, a type or an accuracy of a numerical integration method, atype or an accuracy of a numerical approximation, a size or an accuracyof a Hessian matrix to be used for optimization, one or more processparameters, a starting value or a tolerance of an optimization methodand/or a type or noise characteristics of a sensor, for example. In manycases the control parameter MP influences a control-related computationcomplexity for the controller CTL.

According to embodiments of the invention, the control device CTLD orthe controller CTL comprises a second sensor system S2 for continuallycapturing or measuring present complexity data AD that quantify apresent, in particular control-related, computation complexity for thecontroller CTL.

The complexity data AD can quantify in particular a processor load, atemperature, a resource use, a program runtime, a time requirement, apower consumption and/or other complexity variables relating to ahardware of the controller CTL.

The second sensor system S2 is preferably coupled to the hardware of thecontroller CTL and can comprise a temperature sensor arranged on aprocessor of the controller CTL, for example. Alternatively, oradditionally, the second sensor system can capture a present processorload on the controller CTL or can retrieve the processor load from theoperating system.

The present complexity data AD and the present state data SD aretransmitted from the second sensor system S2 to a control planner PL.The control planner PL is used to ascertain optimized control parametersfor configuring the controller CTL. The control planner PL optimizes thecontrol parameters according to a performance measure PM that quantifiesa performance of the controller CTL or of its control method and/or aperformance of the technical system TS. The performance measure PM isthus a target variable to be optimized by the control planner PL as partof an optimization method.

The performance measure PM can quantify a control accuracy, a controlspeed, a reaction speed, a performance accuracy, a performance speedand/or a weighted combination of the above variables, for example. Inparticular, the performance measure PM can also relate to a performanceof the technical system TS, for example an energy production, an energyconsumption, vibrations, pollutant emissions and/or a precision ofactions to be performed.

The control planner PL ascertains—depending on the present complexitydata AD and the present state data SD—an updated control parameter MPSthat leads to an optimized or particularly high-performance measure PM.For this optimization the control planner PL preferably uses a model ofthe controller CTL that relates the computation complexity for thecontroller CTL to the performance of the controller CTL or of thetechnical system TS and to the state of the technical system TS. In thisway, the updated control parameter MPS can be adapted for presentoperating states of the technical system TS on the basis of the presentstate data SD and for a present computation load for the controller CTLon the basis of the present complexity data AD.

A multiplicity of optimizing planning programs are available in order toimplement the control planner PL. These can be used to express planningtasks in a machine-readable manner, for example by suitable descriptionlanguages such as PDDL (Planning Domain Definition Language) or OWL (WebOntology Language), and to process them using automation. Based on aperformance measure, such a planner can ascertain performance-optimizedcontrol parameters using known optimization methods.

The updated control parameter MPS is transmitted from the controlplanner PL to the controller CTL. The controller CTL is reconfigured bythe updated control parameters MPS, and the control method and hence thefirst control loop RL1 are adapted for the present operating state ofthe technical system TS and for the present computation load on thecontroller CTL in an optimized manner.

The capture of the present state data SD and complexity data AD, theirsupply to the control planner PL, the ascertainment of the updatedcontrol parameter MPS and the reconfiguration of the controller CTL forma second control loop RL2 during operation.

FIG. 2 shows the control device CTLD according to embodiments of theinvention with a more detailed depiction of the control planner PL.

Where the same or corresponding reference signs as in FIG. 1 are used inFIG. 2, these reference signs denote the same or corresponding entities,which can be implemented or configured in particular as described above.

As already explained above, the controller CTL configured by the controlparameter MP controls the technical system TS on the basis of thecurrently measured state data SD by outputting control signals CS in afirst control loop RL1.

As furthermore explained above, the present state data SD and presentcomplexity data AD measured by the second sensor system S2 aretransmitted to the control planner PL, which takes the present statedata SD and the present complexity data AD as a basis for ascertainingan updated control parameter MPS.

For this purpose, the control planner PL uses a controller model toforecast a control-parameter-dependent computation complexity for thecontroller CTL within a predefinable forecast horizon. A multiplicity ofefficient controller models are available for this. Such a controllermodel can in particular model, indicate and/or quantify how acomputation complexity for the controller CTL behaves in the event ofalteration of a control accuracy and/or a control speed. Generally,computation complexity also increases with control accuracy and/orcontrol speed. The controller model is used to determine the updatedcontrol parameter MPS such that the control method configured therebyincreases its performance, as quantified by the performance measure PM,in a respective present situation.

By way of example, if the computation load on the controller CTL iscurrently high, its control accuracy can be temporarily lowered in orderto boost a performance speed for an action of the technical system TSinstead and thus to increase a level of performance.

The controller model effectively comprises or models a proceduralknowledge of relationships of effect or dependencies between performanceor state changes of the controller CTL or of the technical system TS anda respectively required computation complexity for the controller CTL.

By contrast, the state data SD and complexity data AD used as criteriafor ascertaining the updated control parameter MPS can be regarded asdeclarative knowledge of the technical system TS or the controller CTL.

To perform advance calculations in a first phase P1 of the methodaccording to embodiments of the invention, the control planner PLcomprises a Pareto optimizer PARO. The Pareto optimizer PARO ascertainsa so-called Pareto set PAR beforehand by the controller model on thebasis of the performance measure PM. The Pareto set PAR is a subset of aparameter space PS comprising possible control parameters.

Such a Pareto set comprises those parameters of a parameter space forwhich a performance variable, for example a control accuracy, cannot beimproved without impairing another performance variable, for example acomputation complexity, in the process. A Pareto set is frequently alsoreferred to as a Pareto front.

The control parameters contained in the Pareto set PAR then generallylead to better or at least no worse performance than other controlparameters of the parameter space PS. In this way, less-than-optimumcontrol parameters or at least control parameters that do not lead to animprovement can be precluded in advance already, i.e. here in the firstphase P1. Multiple known methods are available for ascertaining thePareto set PAR.

If the control parameters are multidimensional parameter vectors in theparameter space PS, the Pareto set PAR can be a hypersurface or anotherselected subset of the parameter space PS. In many cases, the Pareto setPAR is very severely limited compared to the whole parameter space PS.

In the present exemplary embodiment, the Pareto set PAR is determined onthe basis of state data SD and complexity data AD that are transmittedto the Pareto optimizer PARO for this purpose. By taking into accountthe state data SD and the complexity data AD it is possible for thePareto set PAR to be better adapted for an operating situation of thetechnical system TS and/or for a computation capacity of the controllerCTL. An updated control parameter MPS optimizing the performance isselected during normal control operation—subsequently also referred toas second phase P2—by a selection module SEL of the control planner PLfrom the Pareto set PAR ascertained in the first phase P1. For thispurpose, the present state data SD and the present complexity data ADare transmitted to the selection module SEL.

The selection module SEL takes the present state data SD and the presentcomplexity data AD as a basis for selecting an updated control parameterMPS that optimizes the performance measure PM in the present specifiedsituation—specified by the state data SD and the complexity data AD—orat least brings it more into line with an optimum. Advantageously, thatcontrol parameter that leads to the best compromise, as quantified bythe performance measure PM, between control performance, controlstability and control computation complexity in the present situation isselected from the Pareto set PAR as updated control parameter MPS. Inparticular, that control parameter that leads to the highest performancemeasure PM can be selected from the Pareto set PAR as updated controlparameter MPS.

The selection is made in particular by the forecast model for thecomputation complexity for the controller CTL and by the process modelfor the behavior of the technical system TS. The selection of theupdated parameter MPS can be adapted for present operating states of thetechnical system on the basis of the present state data SD and for apresent computation load on the controller CTL on the basis of thepresent complexity data AD.

The updated parameter MPS ascertained by the selection module SEL istransmitted from the selection module SEL to the controller CTL in orderto reconfigure the latter, as described above, in a second control loopRL2 during operation.

Since the Pareto set PAR is generally severely limited compared to thefull parameter space PS, the complexity for selection of the optimizedcontrol parameter MPS decreases considerably in the second phase P2. Inmany cases, the selection of the updated control parameter MPS and thereconfiguration of the controller CTL can therefore be performed duringoperation and in real time.

The control method can therefore be dynamically adapted for changes inthe computation load on the controller CTL, for changes in the operatingsituation and/or for changes in performance guidelines in an automaticand optimized manner. In many cases, such dynamic adaptation of controlparameters permits the control device CTLD to be used under moreoperating conditions than in its original configuration. Often,technical systems can therefore be stabilized more quickly after largerdisturbances, and undesirable shutdowns can be avoided.

Although the present invention has been disclosed in the form ofpreferred embodiments and variations thereon, it will be understood thatnumerous additional modifications and variations could be made theretowithout departing from the scope of the invention.

For the sake of clarity, it is to be understood that the use of “a” or“an” throughout this application does not exclude a plurality, and“comprising” does not exclude other steps or elements.

1. A computer-implemented method for controlling a technical system,wherein a) a controller is provided, the control method of which isconfigurable by a control parameter; b) state data of the technicalsystem are captured and fed into the controller; c) the technical systemis controlled by the controller on a basis of the state data in a firstcontrol loop using the control method; d) complexity data quantifying apresent computation complexity for the controller are captured andtransmitted to a control planner; e) the control planner takes thecomplexity data as a basis for ascertaining an updated control parameterthat renders the control method currently more performant, according toa predefined performance measure, than as a result of the previouscontrol parameter; and f) the controller is reconfigured by the updatedcontrol parameter.
 2. The method as claimed in claim 1, wherein thecomplexity data captured are a processor load on the controller, atemperature of the controller, a resource use of the controller, aprogram runtime of the controller and/or a time requirement of thecontroller.
 3. The method as claimed in claim 1, wherein the capture ofthe complexity data, an ascertainment of the updated control parameterand a reconfiguration of the controller are performed in a secondcontrol loop.
 4. The method as claimed in claim 1, wherein state data ofthe technical system are transmitted to the control planner, and in thatthe updated control parameter is ascertained on the basis of the statedata.
 5. The method as claimed in claim 1, wherein the control plannerascertains a parameter range comprising first control parameters in sucha way that the control method configured in each case by the firstcontrol parameters has better performance, according to the performancemeasure, than the control method configured in each case by othercontrol parameters.
 6. The method as claimed in claim 5, wherein thefirst parameter range ascertained is a Pareto set.
 7. The method asclaimed in claim 5, wherein the updated control parameter is selectedfrom the ascertained first parameter range on the basis of the statedata and/or the complexity data.
 8. The method as claimed in claim 1,wherein the controller temporally extrapolates state data and controlsthe technical system on the basis of the temporally extrapolated statedata.
 9. A control device for controlling a technical system configuredto perform a method as claimed in claim
 1. 10. A computer programproduct, comprising a computer readable hardware storage device havingcomputer readable program code stored therein, said program codeexecutable by a processor of a computer system to implement a methodconfigured to perform a method as claimed in claim
 1. 11. Acomputer-readable storage medium having a computer program product asclaimed in claim 10.